Early Preview

This is currently very much a preview. Please feel free to try things out, but don't be upset if anything is not yet working. Feedback is welcome over on our GitHub Dicussions page.

class System.​Diagnostics.​Metrics.​Instrument<​T>

Assembly: System.Diagnostics.DiagnosticSource

Inheritance: object → Instrument → Instrument

The base class for all non-observable instruments.

Properties

public InstrumentAdvice<​T>
Advice
Gets the <see cref="T:System.Diagnostics.Metrics.InstrumentAdvice`1" /> associated with the instrument.
public string
Description
Gets the instrument description.
public bool
Enabled
Gets a value that indicates if there are any listeners for this instrument.
public bool
IsObservable
Gets a value that indicates whether the instrument is an observable instrument.
public Meter
Meter
Gets the Meter that created the instrument.
public string
Name
Gets the instrument name.
public string
Unit
Gets the instrument unit of measurements.
Returns the tags associated with the instrument.

Methods

protected void
RecordMeasurement​(T measurement)
Records a measurement by notifying all <see cref="T:System.Diagnostics.Metrics.MeterListener" /> objects that are listening to this instrument.
measurement The measurement value.
protected void
RecordMeasurement​(T measurement, Collections.​Generic.​KeyValuePair<​string, object> tag)
Records a measurement by notifying all <see cref="T:System.Diagnostics.Metrics.MeterListener" /> objects that are listening to this instrument.
measurement The measurement value.
tag A key-value pair tag associated with the measurement.
protected void
RecordMeasurement​(T measurement, Collections.​Generic.​KeyValuePair<​string, object> tag1, Collections.​Generic.​KeyValuePair<​string, object> tag2)
Records a measurement by notifying all <see cref="T:System.Diagnostics.Metrics.MeterListener" /> objects that are listening to this instrument.
measurement The measurement value.
tag1 A first key-value pair tag associated with the measurement.
tag2 A second key-value pair tag associated with the measurement.
protected void
RecordMeasurement​(T measurement, Collections.​Generic.​KeyValuePair<​string, object> tag1, Collections.​Generic.​KeyValuePair<​string, object> tag2, Collections.​Generic.​KeyValuePair<​string, object> tag3)
Records a measurement by notifying all <see cref="T:System.Diagnostics.Metrics.MeterListener" /> objects that are listening to this instrument.
measurement The measurement value.
tag1 A first key-value pair tag associated with the measurement.
tag2 A second key-value pair tag associated with the measurement.
tag3 A third key-value pair tag associated with the measurement.
protected void
RecordMeasurement​(T measurement, TagList& tagList)
protected void
RecordMeasurement​(T measurement, ReadOnlySpan<​Collections.​Generic.​KeyValuePair<​string, object>> tags)
Records a measurement by notifying all <see cref="T:System.Diagnostics.Metrics.MeterListener" /> objects that are listening to this instrument.
measurement The measurement value.
tags A span of key-value pair tags associated with the measurement.
protected void
Publish​()
Inherited from Instrument
Activates the instrument to start recording measurements and to allow listeners to start listening to such measurements.
public bool
Equals​(object obj)
Inherited from object
protected void
Finalize​()
Inherited from object
public int
GetHashCode​()
Inherited from object
public Type
GetType​()
Inherited from object
protected object
MemberwiseClone​()
Inherited from object
public string
ToString​()
Inherited from object